package com.ylr.admin.framework.mapper;

import com.ylr.admin.framework.entity.RoleUriEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ylr.admin.framework.entity.UriEntity;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Set;

/**
 * Created by IntelliJ IDEA.
 *
 * @author wyw
 * date: 2023-04-21 11:45:00
 * className: RoleUriMapper
 * version: 1.0
 * description:
 */
public interface RoleUriMapper extends BaseMapper<RoleUriEntity> {

    /**
     * 查询角色已关联的系统接口主键集合
     * @param roleId       角色主键
     * @param deleteStatus 删除状态
     * @return 系统接口主键集合
     */
    Set<Long> findUriIdSet(@Param("roleId") Long roleId, @Param("deleteStatus") Integer deleteStatus);

    /**
     * 查询系统接口已关联的角色主键集合
     * @param uriId        系统接口主键
     * @param deleteStatus 删除状态
     * @return 角色主键集合
     */
    Set<Long> findRoleIdSet(@Param("uriId") Long uriId, @Param("deleteStatus") Integer deleteStatus);

    /**
     * 查询角色关联的’系统接口‘列表
     * @param roleIdSet    角色主键集合
     * @param deleteStatus 删除状态
     * @return ’系统接口‘列表
     */
    List<UriEntity> getSimpleUriList(@Param("roleIdSet") Set<Long> roleIdSet, @Param("deleteStatus") Integer deleteStatus);

}
